class_name Buff extends Area2D

@export_category("增益属性")
## 健康
@export var health := 0.0
## 最大健康
@export var max_health := 0.0
## 攻击力
@export var damage := 0.0
## 移动速度
@export var speed := 0.0
## 射速
@export var fire_rate := 0.0
## 炮弹速度
@export var shell_speed := 0.0

@export_category("特殊属性")
## 船
@export var boat := false

@export_category("生命周期")
## 存活时间:秒
@export var max_time := 10.0
var time := 0.0


func _process(delta: float) -> void:
	modulate.a = sin(Time.get_ticks_msec() / 60.0) * 0.5 + 0.5
	time += delta
	if time >= max_time: die()



func die() -> void:
	queue_free()


func _on_body_entered(body: Node2D) -> void:
	body.get_buff(self)
	die()
